Towards certification of TLA+ proof obligations with SMT solvers
نویسندگان
چکیده
TLA+ is a formal specification language that is based on Zermelo-Fränkel set theory and the Temporal Logic of Actions TLA. The TLA+ proof system TLAPS assists users in deductively verifying safety properties of TLA+ specifications. TLAPS is built around a proof manager, which interprets the TLA+ proof language, generates corresponding proof obligations, and passes them to backend verifiers. In this paper we present a new backend for use with SMT solvers that supports elementary set theory, functions, arithmetic, tuples, and records. We introduce a typing discipline for TLA+ proof obligations, which helps us to disambiguate the translation of expressions of (untyped) TLA+, while ensuring its soundness. Our work is a first step towards the certification of proofs generated by proof-producing SMT solvers in Isabelle/TLA+, which is intended to be the only trusted component of TLAPS.
منابع مشابه
Automatic Verification of TLA + Proof Obligations with SMT Solvers
TLA is a formal specification language that is based on ZF set theory and the Temporal Logic of Actions TLA. The TLA proof system tlaps assists users in deductively verifying safety properties of TLA specifications. tlaps is built around a proof manager, which interprets the TLA proof language, generates corresponding proof obligations, and passes them to backend verifiers. In this paper we pre...
متن کاملHarnessing SMT Solvers for TLA+ Proofs
TLA+ is a language based on Zermelo-Fraenkel set theory and linear temporal logic designed for specifying and verifying concurrent and distributed algorithms and systems. The TLA+ proof system TLAPS allows users to interactively verify safety properties of these systems. At the core of TLAPS, a proof manager interprets the proof language, generates corresponding proof obligations and passes the...
متن کاملVerifying Safety Properties with the TLA+ Proof System
TLAPS, the TLA proof system, is a platform for the development and mechanical verification of TLA proofs. The TLA proof language is declarative, and understanding proofs requires little background beyond elementary mathematics. The language supports hierarchical and non-linear proof construction and verification, and it is independent of any verification tool or strategy. Proofs are written in ...
متن کاملEncoding TLA+ set theory into many-sorted first-order logic
We present an encoding of Zermelo-Fraenkel set theory into many-sorted first-order logic, the input language of state-of-the-art smt solvers. This translation is the main component of a back-end prover based on smt solvers in the TLA Proof System.
متن کاملEncoding TLA ^+ + into Many-Sorted First-Order Logic
This paper presents an encoding of a non-temporal fragment of the TLA language, which includes untyped set theory, functions, arithmetic expressions, and Hilbert’s ε operator, into many-sorted firstorder logic, the input language of state-of-the-art smt solvers. This translation, based on encoding techniques such as boolification, injection of unsorted expressions into sorted languages, term re...
متن کامل